Skip to content

[DASH S2] X11 PoW primitive - #98

Merged
frstrtr merged 2 commits into
masterfrom
dash/pr0-foundation-s2
Jun 16, 2026
Merged

[DASH S2] X11 PoW primitive#98
frstrtr merged 2 commits into
masterfrom
dash/pr0-foundation-s2

Conversation

@frstrtr

@frstrtr frstrtr commented Jun 16, 2026

Copy link
Copy Markdown
Owner

S2 slice — X11 PoW hashing primitive (PR-0 foundation decomposition)

Second slice of the dash PR-0 foundation arc (S1 = #92, merged). Adds the X11 proof-of-work hashing primitive for the dash coin module.

Scope

  • New dash_x11 static lib: sph reference C (dashcore v0.16.1.1) — BLAKE→BMW→GROESTL→SKEIN→JH→KECCAK→LUFFA→CUBEHASH→SHAVITE→SIMD→ECHO.
  • Header-only hash_x11.hpp wrapper over core/uint256.hpp.
  • src/impl/dash/ build wiring (add_subdirectory(dash)crypto).
  • Known-answer test test_dash_x11_kat: hashes the DASH mainnet genesis 80-byte header, asserts the published genesis block hash (pins the full pipeline end-to-end).

Safety

SAFE-ADDITIVE. Diff confined to src/impl/dash/* + one additive test target. Nothing existing links dash_x11, so ltc/btc/doge/dgb build + ctest surfaces are untouched. Consumed from S3 (DGW v3 header-chain slice) onward.

Verification

  • Local Linux x86_64: build green, DashX11Kat 2/2 PASS (run from build/, nonzero test count confirmed).
  • This PR exists for CI visibility — authoritative Linux x86_64 ctest runs here.

Follow-on slices

DGW v3 retarget → S3; pay → S4; block-replay → S5.

Draft pending CI + ltc-doge review; operator-gated merge.

frstrtr added 2 commits June 16, 2026 05:16
Pure single-coin hashing primitive for the DASH S2 PR-0 slice. Diff
confined to src/impl/dash/crypto/x11/* plus the hash_x11.hpp wrapper;
sole seam is read-only core/uint256.hpp already on master. No ltc/btc/
doge surface. DGW retarget deferred to S3 (header-chain slice).

CMake dash_x11 target + KAT ctest wiring follow on this branch.
The S2 X11 KAT executable is registered via gtest_add_tests but the
Linux test jobs build an explicit --target list rather than all, so the
binary was never compiled and ctest reported both DashX11Kat cases as
Not Run. Add test_dash_x11_kat alongside test_doge_chain/test_compact_blocks
in both the Linux x86_64 and ASan+UBSan build steps.
@frstrtr
frstrtr marked this pull request as ready for review June 16, 2026 06:48
@frstrtr

frstrtr commented Jun 16, 2026

Copy link
Copy Markdown
Owner Author

Per-coin isolation sign-off — ltc-doge-production-steward (DASH S2): SAFE-ADDITIVE, no cross-coin regression. ✅

(Formal GH Approve blocked — shared push identity can't approve own PR; this comment + email to integrator is the sign-off of record.)

dash_x11 referenced nowhere outside src/impl/dash (git grep clean) → nothing existing links it; ltc/btc/doge/dgb/bch build+link surfaces untouched. Three shared-file hunks all append-only:

CI green across six coin smokes + Linux x86_64 + ASan/UBSan + Windows + macOS. KAT pins DASH genesis hash end-to-end through the 11-round pipeline. Clear to undraft/merge at operator discretion.

@frstrtr
frstrtr merged commit 5416073 into master Jun 16, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant